@Book{muchnick,
  author = 	 {Steven S. Muchnick},
  title = 	 {Advanced Compiler Design and Implementation},
  publisher = 	 {Morgan Kaufmann},
  year = 	 {1997}
}

@Article{cytron,
  author = {Ron Cytron and Jeanne Ferrante and Barry K. Rosen and Mark N. Wegman},
  title = {Efficiently Computing Static Single Assignment Form and the Control Dependence Graph},
  journal = {ACM Transactions on Programming Languages and Systems},
  volume = {13},
  number = {4},
  pages = {451 -- 490},
  year = {1991}
}

@InProceedings{cacao,
  author = {Andreas Krall and Reinhard Grafl},
  title = {CACAO - A 64 bit JavaVM Just-in-Time Compiler},
  year = {1997},
  pages = {1017--1030},
  publisher = {ACM}
}

@Article{suganuma_ibm,
  author = {T. Suganuma and T. Ogasawara and K. Kawachiya and M. Takeuchi and  K. Ishizaki and A. Koseki and T. Inagaki and T. Yasue and M. Kawahito and T. Onodera and H. Komatsu and T. Nakatani},
  title = {Evolution of a java just-in-time compiler for IA-32 platforms},
  journal = {IBM J. Res. Dev.},
  volume = {48},
  number = {5/6},
  year = {2004},
  issn = {0018-8646},
  pages = {767--795},
  publisher = {IBM Corp.},
  address = {Riverton, NJ, USA}
}

@InProceedings{wimmer_franz,
  author = 	 {Christian Wimmer and Michale Franz},
  title = 	 {Linear Scan Register Allocation on SSA Form},
  booktitle =    {CGO '10: Proceedings of the 8th annual IEEE/ACM international symposium on Code generation and optimization},
  year =         {2010},
  pages =        {170--179},
  location =     {Toronto, Ontario, Canada},
  publisher =    {ACM},
  address =      {New York, NY, USA}
}

% Nao utilizado no momento
% Unpublished class project report, Universidade de Wiconsin
@misc{dkoski,
 author = {David Koski},
 title = {A Tcl Compiler},
 year = {1995},
 month = {October},
 howpublished = {Projeto de classe não publicado, Universidade de Wisconsin}
}

% Nao utilizado no momento
@misc{sah_blow,
 author = {Adam Sah and Jon Blow},
 title = {A Compiler for the Tcl Language},
 year = {1993}
}

@techreport{sah_tc,
 Author = {Adam Sah},
 Title = {TC: An Efficient Implementation of the Tcl Language},
 Institution = {EECS Department, University of California, Berkeley},
 Year = {1994},
 Month = {Apr},
 URL = {\url{http://www.eecs.berkeley.edu/Pubs/TechRpts/1994/5189.html}},
 Number = {UCB/CSD-94-812},
 Abstract = {Tcl is a highly dynamic language that is especially challenging to execute efficiently. In this paper, I discuss many issues involved in implementing Tcl, and describe a design for a faster system that maintains Tcl semantics, including its C callout mechanism. This design focuses on a method for caching the parsed representation for data values, and lazily converting to strings on demand. This allows most computations to be performed using native types (e.g. integers) rather than strings. The current implementation is presented along with results showing a speedup of about 5-10 times over the existing Tcl interpreter.}
}

@inproceedings{rush_lang,
 author = {Adam Sah and Jon Blow and Brian Dennis},
 title = {An Introduction to the Rush Language},
 institution = {EECS Department, University of California, Berkeley},
 address = {Berkeley, CA, USA},
 year = {1994},
 booktitle = {TCLTK'94: Proceedings of the Tcl/Tk 1994 Workshop},
 location = {New Orleans, Louisiana}
}

@inproceedings{tcl_bytecode,
 author = {Brian T. Lewis},
 title = {An on-the-fly bytecode compiler for Tcl},
 booktitle = {TCLTK'96: Proceedings of the 4th conference on USENIX Tcl/Tk Workshop, 1996},
 year = {1996},
 location = {Monterey, California},
 publisher = {USENIX Association},
 address = {Berkeley, CA, USA}
}

@techreport{ousterhout_89,
 author = {John K. Ousterhout},
 title = {Tcl: An Embeddable Command Language},
 institution = {EECS Department, University of California, Berkeley},
 year = {1989},
 month = {Nov},
 url = {\url{http://www.eecs.berkeley.edu/Pubs/TechRpts/1989/5742.html}},
 number = {UCB/CSD-89-541},
 abstract = {Tcl is an interpreter for a tool command language. It consists of a library package that is embedded in tools (such as editors, debuggers, etc.) as the basic command interpreter. Tcl provides (a) a parser for a simple textual command language, (b) a collection of built-in utility commands, and (c) a C interface that tools use to augment the built-in commands with tool-specific commands. Tcl is particularly attractive when integrated with the widget library of a window system: it increases the programmability of the widgets by providing mechanisms for variables, procedures, expressions, etc.; it allows users to program both the appearance and the actions of widgets; and it offers a simple but powerful communication mechanism between interactive programs.}
}

@inproceedings{pypy,
 author = {Armin Rigo and Samuele Pedroni},
 title = {PyPy's approach to virtual machine construction},
 booktitle = {OOPSLA '06: Companion to the 21st ACM SIGPLAN symposium on Object-oriented programming systems, languages, and applications},
 year = {2006},
 isbn = {1-59593-491-X},
 pages = {944--953},
 location = {Portland, Oregon, USA},
 doi = {http://doi.acm.org/10.1145/1176617.1176753},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@inproceedings{tcl_to_c,
 author = {Forest R. Rouse and Wayne Christopher},
 title = {A Tcl to C compiler},
 booktitle = {TCLTK '98: Proceedings of the 3rd Annual USENIX Workshop on Tcl/Tk},
 year = {1995},
 location = {Toronto, Canada},
 publisher = {USENIX Association},
 address = {Berkeley, CA, USA},
}

@inproceedings{vitale_catenation,
 author = {Benjamin Vitale and Tarek S. Abdelrahman},
 title = {Catenation and Specialization for Tcl Virtual Machine Performance},
 booktitle = {In IVME ’04 Proceedings},
 year = {2004},
 pages = {42--50},
 publisher = {ACM Press}
}

@book{bluebook,
 author = {Adele Goldberg and David Robson},
 title = {Smalltalk-80: the language and its implementation},
 year = {1983},
 isbn = {0-201-11371-6},
 publisher = {Addison-Wesley Longman Publishing Co., Inc.},
 address = {Boston, MA, USA},
}


@article{lua95_pl,
 author = {Roberto Ierusalimschy and Luiz Henrique de Figueiredo and Luiz Henrique and Figueiredo Waldemar and Waldemar Celes Filho},
 title = {Lua - an Extensible Extension Language},
 journal = {Software: Practice e Experience},
 year = {1995},
 volume = {26},
 pages = {635--652}
}

@inproceedings{self_origin,
 author = {David Ungar and Randall B. Smith},
 title = {Self: The power of simplicity},
 booktitle = {OOPSLA '87: Conference proceedings on Object-oriented programming systems, languages and applications},
 year = {1987},
 pages = {227--242},
}



@manual{intel_basicarch,
 title = {Intel® 64 and IA-32 Architectures Software Developer’s Manual -- Volume 1: Basic Architecture},
  author = 	 {Intel},
  year = 	 {2009},
  url = {http://www.intel.com/products/processor/manuals/},
  note = {Acessado em 24 de setembro de 2010}
}

@manual{intel_aam,
  title = {Intel® 64 and IA-32 Architectures Software Developer's Manual -- Volume 2A: Instruction Set Reference, A-M},
  author = {Intel},
  year = {2009},
  url = {http://www.intel.com/products/processor/manuals/},
  note = {Acessado em 23 de setembro de 2010}
}

@manual{intel_naz,
  title = {Intel® 64 and IA-32 Architectures Software Developer's Manual -- Volume 2B: Instruction Set Reference, N-Z},
  author = {Intel},
  year = {2009},
  url = {http://www.intel.com/products/processor/manuals/},
  note = {Acessado em 23 de setembro de 2010}
}

@manual{intel_prog,
  title = {Intel® 64 and IA-32 Architectures Software Developer's Manual -- Volume 3A: System Programming Guide, Part 1},
  author = {Intel},
  year = {2009},
  url = {http://www.intel.com/products/processor/manuals/},
  note = {Acessado em 23 de setembro de 2010}
}


@Booklet{systemv-abi,
  title = 	 {System V Application Binary Interface},
  author = 	 {{Santa Cruz Operation}},
  url = {http://www.sco.com/developers/devspecs/abi386-4.pdf},
  year = 	 {1997},
  edition =      {4},
  note = 	 {Acessado em 24 de setembro de 2010}
}



@Misc{macosx-abi,
  title = 	 {Mac OS X ABI Function Call Guide},
  organization = {Apple},
  howpublished = {\url{http://developer.apple.com/mac/library/documentation/DeveloperTools/Conceptual/LowLevelABI/Mac_OS_X_ABI_Function_Calls.pdf}},
  year = 	 {2009},
  note = 	 {Acessado em 24 de setembro de 2010},
}
%  address = 	 {1 Infinite Loop - Cupertino, CA 954014},

  
% Sistemas com uso de compilacao JIT

@inproceedings{deutsch84efficient,
 author = "L. Peter Deutsch and Allan M. Schiffman",
 title = "Efficient Implementation of the {Smalltalk-80} System",
 booktitle = "Conference Record of the Eleventh Annual {ACM} Symposium on Principles of Programming Languages",
 address = "Salt Lake City, Utah",
 pages = "297--302",
 year = "1984",
}

% Não li ainda
@inproceedings{psyco,
 author = {Armin Rigo},
 title = {Representation-based just-in-time specialization and the psyco prototype for python},
 booktitle = {PEPM '04: Proceedings of the 2004 ACM SIGPLAN symposium on Partial evaluation and semantics-based program manipulation},
 year = {2004},
 isbn = {1-58113-835-0},
 pages = {15--26},
 location = {Verona, Italy},
 doi = {http://doi.acm.org/10.1145/1014007.1014010},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@article{jalapeno_1,
 author = {B. Alpern and C. R. Attanasio and J. J. Barton and M. G. Burke and P. Cheng and J.-D. Choi and A. Cocchi and S. J. Fink and D. Grove and M. Hind and S. F. Hummel and D. Lieber and V. Litvinov and M. F. Mergen and T. Ngo and J. R. Russell and V. Sarkar and M. J. Serrano and J. C. Shepherd and S. E. Smith and V. C. Sreedhar and H. Srinivasan and J. Whaley},
 title = {The Jalape\~no virtual machine},
 journal = {IBM Syst. J.},
 volume = {39},
 number = {1},
 year = {2000},
 issn = {0018-8670},
 pages = {211--238},
 publisher = {IBM Corp.},
 address = {Riverton, NJ, USA},
}

% acm diz 1995? http://portal.acm.org/citation.cfm?id=221640
@phdthesis{holzle,
 author = {Urs H\"olzle},
 title = {Adaptive Optimization for SELF: Reconciling High Performance with Exploratory Programming},
 year = {1994},
 publisher = {Stanford University},
 address = {Stanford, CA, USA},
}

@inproceedings{yapc,
 vscpubtype = {conference},
 author = {Anderson Faustino da Silva and V\'itor Santos Costa},
 title = {Design, Implementation, and Evaluation of an Dynamic Compilation Framework for the YAP System},
 year = {2007},
 pages = {},
 editor = {Veronica Dahl and Ilkka Niemel\"a},
 publisher = {Springer},
 series = {Lecture Notes in Computer Science},
 volume = {4670},
 booktitle = {Proceedings of the 23rd International Conference on Logic Programming}
}

@inproceedings{suganuma_oopsla_2001,
 author = {Toshio Suganuma and Toshiaki Yasue and Motohiro Kawahito and Hideaki Komatsu and Toshio Nakatani},
 title = {A dynamic optimization framework for a Java just-in-time compiler},
 booktitle = {OOPSLA '01: Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications},
 year = {2001},
 isbn = {1-58113-335-9},
 pages = {180--195},
 location = {Tampa Bay, FL, USA},
 doi = {http://doi.acm.org/10.1145/504282.504296},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@inproceedings{suganuma_pldi_2003,
  author = {Toshio Suganuma and Toshiaki Yasue and Toshio Nakatani},
  title = {A region-based compilation technique for a Java just-in-time compiler},
  booktitle = {In Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation},
  year = {2003},
  pages = {312--323},
  publisher = {ACM Press}
}

@article{judo,
 author = {Michal Cierniak and Guei-Yuan Lueh and James M. Stichnoth},
 title = {Practicing JUDO: Java under dynamic optimizations},
 journal = {SIGPLAN Not.},
 volume = {35},
 number = {5},
 year = {2000},
 issn = {0362-1340},
 pages = {13--26},
 doi = {http://doi.acm.org/10.1145/358438.349306},
 publisher = {ACM},
 address = {New York, NY, USA}
}

@misc{gnu_lightning,
 author = {{FREE SOFTWARE FOUNDATION}},
 title = {Using and porting GNU lightning},
 howpublished = {\url{http://www.gnu.org/software/lightning/manual/lightning.html}},
 year = {2007},
 note = {Acessado em 9 de maio de 2010}
}

@inproceedings{ir_tree_parsing,
 author = {M. Anton Ertl and Kevin Casey and David Gregg},
 title = {Fast and flexible instruction selection with on-demand tree-parsing automata},
 booktitle = {PLDI '06: Proceedings of the 2006 ACM SIGPLAN conference on Programming language design and implementation},
 year = {2006},
 isbn = {1-59593-320-4},
 pages = {52--60},
 location = {Ottawa, Ontario, Canada},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@inproceedings{noltis,
 author = {David Ryan Koes and Seth Copen Goldstein},
 title = {Near-optimal instruction selection on dags},
 booktitle = {CGO '08: Proceedings of the 6th annual IEEE/ACM international symposium on Code generation and optimization},
 year = {2008},
 isbn = {978-1-59593-978-4},
 pages = {45--54},
 location = {Boston, MA, USA},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@article{linear_scan_regalloc,
 author = {Massimiliano Poletto and Vivek Sarkar},
 title = {Linear scan register allocation},
 journal = {ACM Trans. Program. Lang. Syst.},
 volume = {21},
 number = {5},
 year = {1999},
 issn = {0164-0925},
 pages = {895--913},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@inproceedings{harpy,
 author = {Martin Grabm{\"u}eller and Dirk Kleeblatt},
 title = {Harpy: run-time code generation in haskell},
 booktitle = {Haskell '07: Proceedings of the ACM SIGPLAN workshop on Haskell workshop},
 year = {2007},
 isbn = {978-1-59593-674-5},
 location = {Freiburg, Germany},
 publisher = {ACM},
 address = {New York, NY, USA},
}

@inproceedings{qemu,
 author = {Fabrice Bellard},
 title = {QEMU, a fast and portable dynamic translator},
 booktitle = {ATEC '05: Proceedings of the annual conference on USENIX Annual Technical Conference},
 year = {2005},
 location = {Anaheim, CA},
 publisher = {USENIX Association},
 address = {Berkeley, CA, USA},
}

@inproceedings{llvm1,
  author = {Chris Lattner and Vikram Adve},
  title = {LLVM: A Compilation Framework for Lifelong Program Analysis \& Transformation},
  booktitle = {CGO '04: Proceedings of the international symposium on Code generation and optimization},
  year = {2004},
  isbn = {0-7695-2102-9},
  pages = {75},
  location = {Palo Alto, California},
  publisher = {IEEE Computer Society},
  address = {Washington, DC, USA}
}

@misc{gcc-ssa,
 author = {{Free Software Foundation}},
 title = {GNU Compiler Collection Internals -- SSA},
 howpublished = {\url{http://gcc.gnu.org/onlinedocs/gccint/SSA.html}},
 year =	{2010},
 note = {Acessado em 23 de setembro de 2010}
}


% Aplicações Tcl

% Li só algumas partes
% http://www.usenix.org/publications/library/proceedings/tcl95/full_papers/welch.txt
@inproceedings{exmh,
 author = {Brent Welch},
 title = {Customization and flexibility in the exmh mail user interface},
 booktitle = {TCLTK '98: Proceedings of the 3rd Annual USENIX Workshop on Tcl/Tk},
 year = {1995},
 location = {Toronto, Canada},
 publisher = {USENIX Association},
 address = {Berkeley, CA, USA}
}

@inproceedings{openacs,
 author = {Rocael Hern{\'a}ndez},
 title = {OpenACS: robust web development framework},
 booktitle = {12th Annual Tck/Tk Conference},
 year = {2005},
 address = {Portland, Oregon, USA}
}

@conference{tcl_nap,
 author = {Harvey Davies},
 title = {The NAP (N-Dimensional Array Processor) Extension to Tcl},
 booktitle = {9th Annual Tck/Tk Conference},
 year = {2002}
}

@misc{gdb_testsuite,
 author = {John Gilmore and Stan Shebs},
 title = {Testsuite -- GDB Internals},
 howpublished = {\url{http://sourceware.org/gdb/current/onlinedocs/gdbint/Testsuite.html}},
 year =	{2010},
 note = {Acessado em 8 de maio de 2010}
}

@misc{tcllib_bench,
 author = {{TCL CORE TEAM}},
 title = {Tcllib},
 howpublished = {\url{http://tcllib.sourceforge.net}},
 year = {2008},
 note = {Acessado em 9 de maio de 2010}
}
